<?php

namespace app\common\controller;

use think\Controller;

class Home extends Controller
{
    // 不需要登录的方法
    protected $NoNeedLogin = [];

    // 存储登录信息
    protected $LoginAuth = [];

    public function __construct()
    {
        // 手动继承父级的构造函数
        parent::__construct();

        // 获取当前访问的方法名
        $action = $this->request->action();

        if(!in_array($action,$this->NoNeedLogin) && !in_array('*',$this->NoNeedLogin))
        {
            $this->IsLogin();
        }
        
    }

    public function IsLogin()
    {
        // 获取cookie
        $LoginAuth = cookie('LoginAuth') ? cookie('LoginAuth') : [];
        
        // 获取id和手机号
        $Busid = isset($LoginAuth['id']) ? $LoginAuth['id'] : 0;
        $BusMobile = isset($LoginAuth['mobile']) ? $LoginAuth['mobile'] : '';
        
        // 判断登录信息是否是空
        if(!$Busid || empty($BusMobile))
        {
            $this->error('请先登录',url('home/index/login'));
        }

        // 组装条件 WHERE `id` = $id AND `mobile` = $mobile
        $where = [
            'id' => $Busid,
            'mobile' => $BusMobile
        ];

        $Business = model('Business.Business')->where($where)->find();

        if(!$Business)
        {
            cookie('LoginAuth',null);

            $this->error('非法登录，请重新登录',url('home/index/login'));
        }

        // 把登录信息给继承到Home控制器的所有控制器的
        $this->LoginAuth = $Business;
        
        // 赋值视图变量
        $this->assign('LoginAuth',$Business);

    }
}
